package com.eonmind.ai.core.draw.api;

import com.eonmind.ai.core.draw.model.AiDrawTaskModel;
import com.eonmind.ai.core.draw.model.AiDrawTaskResModel;
import com.eonmind.common.provider.entity.ai.AiDrawPlatform;

import java.util.List;

/**
 * Ai绘画的接口定义
 */
public interface IAiDrawService<QR> {
    /**
     * 提交一个绘画任务
     *
     * @param aiDrawTask
     * @return 绘画任务的id
     */
    AiDrawTaskResModel submitDrawTask(AiDrawTaskModel aiDrawTask);

    /**
     * 查询一个绘画任务
     *
     * @param taskId 绘画任务的id
     * @return 绘画任务的结果
     */
    QR queryDrawTask(AiDrawPlatform aiDrawPlatform, String taskId);

    /**
     * 批量绘画任务
     *
     * @param taskIds 绘画任务的id集合
     * @return 绘画任务的结果
     */
    List<QR> queryBatchDrawTask(AiDrawPlatform aiDrawPlatform, List<String> taskIds);

}
